package com.ruicar.afs.cloud.afscase.infomanagement.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruicar.afs.cloud.afscase.infomanagement.entity.CaseContractInfo;
import com.ruicar.afs.cloud.common.modules.afscorebusiness.enums.GpsStatusEnum;

import java.util.List;

/**
 * <p>Description: </p>
 *
 * @author ZC.GUO
 * @version 1.0
 * @date create on 2020-05-13 15:19
 */
public interface CaseContractInfoService extends IService<CaseContractInfo> {
    /**
     * @param
     * @description 根据申请编号更新放款审批状态
     * @author yk.Li
     * @date 2020/7/2
     */
    void updateApplyStatus(String contractNo, String applyStatus);

    /**
     * @param
     * @Description 获取'GPS审核岗'节点上的所有数据
     * @Author yk.Li
     * @Date 2020/8/6
     */
    List<CaseContractInfo> getAllContractInfoByWorkflowStatus();

    /**
     * @param
     * @description 根据申请编号更新GPS流程状态
     * @author yk.Li
     * @date 2020/7/2
     */
    void updateWorkflowStatus(String contractNo, GpsStatusEnum statusEnum);

    /**初审提交更新初审人员*/
    void updateLoanAuditor(String contractNo, String userName);

    /**
     * 通过渠道编号获取超期合同信息
     * @param dealerNo
     * @return
     */
    List<CaseContractInfo> getOverdueContractByChannel(String dealerNo);

    /**
     * 保存复核标记
     */
    void saveReviewSign(String contractNo, Boolean status);

    /**
     * 保存暂停
     */
    void savePause(String contractNo, String dec);

    /**
     * 判断是否有代理组长
     * @return
     */
    Boolean getGroupLeader();

    List<String> getContractNoFromChannel(String channelNo);
}
